package com.openlogic.flow.domain.vo;

import java.io.Serial;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.openlogic.common.core.web.domain.BaseEntity;

import lombok.Getter;
import lombok.Setter;

/**
 * @ClassName: FlowDefinitionVo
 * @Description: 流程定义 视图对象
 * @author weiyongpeng
 * @date 2025年2月12日 下午3:54:18
 */
@Getter
@Setter
public class FlowDefinitionVo extends BaseEntity {

	@Serial
	private static final long serialVersionUID = 1L;

	@Id(keyType = KeyType.Auto)
	private Long id;

	/**
	 * 流程定义编码
	 */
	private String flowCode;

	/**
	 * 流程定义名称
	 */
	private String flowName;

	/**
	 * 流程分类id
	 */
	private String category;

	/**
	 * 流程分类名称
	 */
//    @Translation(type = FlowConstant.CATEGORY_ID_TO_NAME, mapper = "category")
	private String categoryName;

	/**
	 * 流程版本
	 */
	private String version;

	/**
	 * 是否发布（0未发布 1已发布 9失效）
	 */
	private Integer isPublish;

	/**
	 * 审批表单是否自定义（Y是 N否）
	 */
	private String formCustom;

	/**
	 * 审批表单路径
	 */
	private String formPath;

	/**
	 * 流程激活状态（0挂起 1激活）
	 */
	private Integer activityStatus;

	/**
	 * 监听器类型
	 */
	private String listenerType;

	/**
	 * 监听器路径
	 */
	private String listenerPath;

	/**
	 * 扩展字段，预留给业务系统使用
	 */
	private String ext;

}
